/**
  ******************************************************************************
  * @文件名           : dri_SPI.c
  * @作者             : citunhk
  * @功能介绍         : SPI硬件驱动
  *	@日期             : 2022.11.1
  ******************************************************************************
  * @注意
  *
  *
  *
  ******************************************************************************
  *更改记录
  *日期 修改人 修改内容
  *
  *
  *
  ******************************************************************************
  */
#include "bsp_SPI.h"

/**
* @函数名	BSP_Flash_CS
* @功能	    片选信号驱动
* @入口参数	command 片选信号电平
* @返回值	无
*/
void BSP_Flash_CS(uint8_t command)
{
	uint16_t i = 0;

	if(command == SET)
	{
		LL_GPIO_SetOutputPin(Flash_CS_Port, Flash_CS_Pin);
	}
	else if(command == RESET)
	{
		LL_GPIO_ResetOutputPin(Flash_CS_Port, Flash_CS_Pin);
	}

	//置完电平延时，避免电平被瞬间改动
	for(i=0;i<32;i++);
}

/**
* @函数名	BSP_Flash_SendByte
* @功能	    写一个字节
* @入口参数	TxByte 待发送字节
* @返回值	无
*/
uint8_t BSP_Flash_SendByte(uint8_t TxByte)
{
	/* 等待数据发送结束 */
	while(!LL_SPI_IsActiveFlag_TXE(FLASH_SPI));
	/* 通过外设 FLASH_SPI 发送一个数据 TxByte */
	LL_SPI_TransmitData8(FLASH_SPI, TxByte);
	/* 等待接收完一字节数据 */
	while(!LL_SPI_IsActiveFlag_RXNE(FLASH_SPI));
	/* 返回接收到的一个字节数据 */
	return LL_SPI_ReceiveData8(FLASH_SPI);
}
